#ifndef __FUNC_IRREC_H__
#define __FUNC_IRREC_H__

typedef struct
{
  UART_HandleTypeDef* ir_uart[4];
  UART_HandleTypeDef* ir_config_uart;
}IRTaskParaTypeDef;

typedef struct
{
  uint8_t header;
  uint8_t devicetype;
  uint8_t devicenum;
  uint8_t event;
  uint8_t sum;
}IRDataType;

typedef struct
{
  uint8_t header;
  uint8_t type;
  uint8_t data1;
  uint8_t data2;
  uint8_t data3;
  uint8_t sum;
}IRConfigType;

typedef struct
{
  uint8_t index;
  uint8_t type;
  uint8_t num;
  uint8_t event;
}IRRecEventListItem;

void ir_TaskFunction(void *pvParameters);
uint8_t ir_Calsendsum(IRDataType *data);
void ir_Hurt(uint8_t ch,IRDataType *data);
void ir_RecHandler(uint8_t ch);
#endif